]> dgit.raspbian.org Git - gnome-shell.git/log
gnome-shell.git
4 years agoUpdated Spanish translation
Daniel Mustieles [Tue, 16 Nov 2021 14:48:18 +0000 (15:48 +0100)]
Updated Spanish translation

4 years agoUpdate Hebrew translation
Yaron Shahrabani [Thu, 11 Nov 2021 22:27:18 +0000 (22:27 +0000)]
Update Hebrew translation

4 years agoenvironment: Require gnome-desktop 3.0
Georges Basile Stavracas Neto [Thu, 11 Nov 2021 19:20:39 +0000 (16:20 -0300)]
environment: Require gnome-desktop 3.0

Pretty much the exact same case of 9ce6756235.

libgnome-desktop saw a major version bump, and we have to
stick with 3.0 for a while.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2030>

4 years agoenvironment: Require GnomeBluetooth 1.0
Georges Basile Stavracas Neto [Sun, 31 Oct 2021 20:24:58 +0000 (17:24 -0300)]
environment: Require GnomeBluetooth 1.0

libgnome-bluetooth will start to offer a 2.0 library version
depending on GTK4. Given that GNOME Shell already depends on
GTK3, it cannot use this next version of gnome-bluetooth. And
since GJS will automatically try and use the latest version
available of any library, Shell must specify it wants 1.0
explicitly.

Add a required GnomeBluetooth version number when importing it
for the status indicator.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2015>

4 years agoUpdate Croatian translation
Goran Vidović [Thu, 11 Nov 2021 09:45:19 +0000 (09:45 +0000)]
Update Croatian translation

(cherry picked from commit ed7153bcbbf29c698226009af6f0df347386609d)

4 years agoUpdate Italian translation
Milo Casagrande [Tue, 9 Nov 2021 08:16:59 +0000 (08:16 +0000)]
Update Italian translation

5 years agomagnifier: Disable desaturation effect when not in use
Sebastian Keller [Mon, 8 Nov 2021 04:19:32 +0000 (05:19 +0100)]
magnifier: Disable desaturation effect when not in use

The desaturation effect was always enabled, regardless of the specified
factor. This was causing the magnifier to always hit offscreen
rendering, even when not necessary. Additionally offscreen rendering is
currently also causing glitches in MetaWindowGroup which this helps to
avoid in some cases.

Related: https://gitlab.gnome.org/GNOME/mutter/-/issues/1678
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2026>

5 years agotheme: Provide :checked state for buttons
Jakub Steiner [Mon, 8 Nov 2021 13:23:53 +0000 (14:23 +0100)]
theme: Provide :checked state for buttons

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4757

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2027>

5 years agoUpdate Portuguese translation
Hugo Carvalho [Sun, 7 Nov 2021 22:35:21 +0000 (22:35 +0000)]
Update Portuguese translation

5 years agoUpdate Occitan translation
Quentin PAGÈS [Sun, 7 Nov 2021 19:31:19 +0000 (19:31 +0000)]
Update Occitan translation

5 years agoUpdate Friulian translation
Fabio Tomat [Sun, 7 Nov 2021 16:50:29 +0000 (16:50 +0000)]
Update Friulian translation

5 years agoUpdate French translation
Charles Monzat [Sun, 7 Nov 2021 14:53:15 +0000 (14:53 +0000)]
Update French translation

(cherry picked from commit 4f2b7300a160e96e66b3b16179d9fb3df3378433)

5 years agoUpdate Slovak translation
Dušan Kazik [Sat, 6 Nov 2021 14:10:47 +0000 (14:10 +0000)]
Update Slovak translation

(cherry picked from commit cc566201b71e86b0a70f722fd155ed5481c5831b)

5 years agoUpdate Polish translation
Piotr Drąg [Sat, 6 Nov 2021 13:27:11 +0000 (14:27 +0100)]
Update Polish translation

5 years agoshellMountOperation: Remove unused volume monitor
Sebastian Keller [Wed, 3 Nov 2021 19:53:55 +0000 (20:53 +0100)]
shellMountOperation: Remove unused volume monitor

It seems to have never been used since 6b5f9a647a, the commit that
introduced it.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2021>

5 years agoUpdate German translation
Christian Kirbach [Wed, 3 Nov 2021 20:33:48 +0000 (20:33 +0000)]
Update German translation

(cherry picked from commit 03a3ce062a79a3593fa8933b90e7144504955829)

5 years agoUpdate Indonesian translation
Kukuh Syafaat [Wed, 3 Nov 2021 10:04:19 +0000 (10:04 +0000)]
Update Indonesian translation

(cherry picked from commit 0512d1fff4b9d62dd6a034ef197a9c4081db17df)

5 years agoUpdate Brazilian Portuguese translation
Rafael Fontenelle [Wed, 3 Nov 2021 01:19:46 +0000 (01:19 +0000)]
Update Brazilian Portuguese translation

(cherry picked from commit ba32dcc16b93986741bfbb3219d1375d0a8fd8be)

5 years agoUpdate Swedish translation
Anders Jonsson [Tue, 2 Nov 2021 21:05:16 +0000 (21:05 +0000)]
Update Swedish translation

(cherry picked from commit edcee44c720203977e77ad2a0f857dc6e0080f4b)

5 years agoUpdate Ukrainian translation
Yuri Chornoivan [Tue, 2 Nov 2021 16:31:49 +0000 (16:31 +0000)]
Update Ukrainian translation

(cherry picked from commit f8cdac49c6dd8e8e364ecdabbde3bbd40f072101)

5 years agoinputMethod: Do not reset invisible preedit on focus_out
Carlos Garnacho [Fri, 29 Oct 2021 14:46:18 +0000 (16:46 +0200)]
inputMethod: Do not reset invisible preedit on focus_out

If the preedit is in invisible state, the last preedit string that
was sent around is already null, so there is no need to clear the preedit
in that case.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2011>

5 years agoinputMethod: Do not communicate preedit text change on reset
Carlos Garnacho [Fri, 29 Oct 2021 14:43:15 +0000 (16:43 +0200)]
inputMethod: Do not communicate preedit text change on reset

This is now done in the ClutterInputFocus for us, since
https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1940. There
is no need to duplicate this call, and it happens to cause undesired
scrolling to content in some cases when this reset happens during
a change in the IM focused client state.

Fixes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4647
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2011>

5 years agoinputMethod: Equate empty preedit string to null
Carlos Garnacho [Fri, 29 Oct 2021 14:41:55 +0000 (16:41 +0200)]
inputMethod: Equate empty preedit string to null

If we get '' from the IM as the preedit string, it is pretty safe
to handle it as "no preedit" altogether.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2011>

5 years agodbusServices/extensions: Only allow one dialog at a time
Florian Müllner [Tue, 26 Oct 2021 17:40:08 +0000 (19:40 +0200)]
dbusServices/extensions: Only allow one dialog at a time

Showing multiple preference dialogs at the same time (for instance
by repeated `gnome-extensions prefs` calls) may or may not work as
expected, depending on whether any of the dialogs is modal or not
(read: opened via the Extensions app).

The easiest way to address this is to disallow more than a single
dialog at the time. It's arguably also the more predictable behavior,
and means extensions don't have to deal with inconsistent state
caused by multiple dialogs.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4564

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2013>

5 years agodbusServices/extensions: Fix shutdown after showing prefs
Florian Müllner [Thu, 28 Oct 2021 17:27:57 +0000 (19:27 +0200)]
dbusServices/extensions: Fix shutdown after showing prefs

GTK4 relies entirely on refcounting for cleanup (that is,
there is no longer a destroy() method that forces a dispose
run regardless of the refcount).

Unfortunately that makes cleanup harder in (some) language
bindings, where an object may be kept alive implicitly by
closures etc.

Address this by releasing the hold count when the window
is closed rather than when it is destroyed.

This isn't the most elegant, but it ensure that the service
doesn't get stuck if an extension doesn't carefully clean
up everything in its prefs widget.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4564

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2013>

5 years agoextensions-tool/prefs: Log D-Bus errors
Florian Müllner [Thu, 28 Oct 2021 17:55:23 +0000 (19:55 +0200)]
extensions-tool/prefs: Log D-Bus errors

We currently ignore any error that may occur when calling the
OpenExtensionPrefs D-Bus method. Right now such an error is highly
unlikely, given that we already checked that we are running under
gnome-shell and the extension in question exists and has prefs.

We'll soon make sure that only one dialog is shown at any time,
which is an error that we can realistically expect, so handle that
properly.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4564

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2013>

5 years agoextensions-tool: Add missing newline
Florian Müllner [Thu, 28 Oct 2021 18:05:03 +0000 (20:05 +0200)]
extensions-tool: Add missing newline

Unlike g_warning() and friends, g_printerr() does not append
a trailing newline.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4564

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2013>

5 years agoshell/app: Don't move all workspace windows to their startup workspace
Sebastian Keller [Sat, 30 Oct 2021 11:21:17 +0000 (13:21 +0200)]
shell/app: Don't move all workspace windows to their startup workspace

Windows from some applications, such as guake, are created as showing on
all workspaces. When these windows are put on the workspaces via
set_workspace_state() during construction, the first time the window is
added to a workspace in the loop triggers the shell app tracker which
then tries to move the window to its startup workspace. This makes the
window unsticky which triggers another set_workspace_state() which
tries to remove the window from all workspaces, but currently it is only
on the first one and then adds it to the startup workspace. Once that is
finished, the first set_workspace_state() continues adding the window
to the remaining workspaces, despite the window now no longer having
on_all_workspaces set to true.

When the window is now unmanaged, the window according to its internal
state is only found on the startup workspace, so it will only be removed
from that. This causes the assertion to fail that checks that the window
is no longer present on any workspace after this.

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4720

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2014>

5 years agoRevert "st: Only use clutter_actor_invalidate_paint_volume() if the API exists"
Carlos Garnacho [Wed, 27 Oct 2021 17:21:08 +0000 (19:21 +0200)]
Revert "st: Only use clutter_actor_invalidate_paint_volume() if the API exists"

Since we are past the 40 API change hurdle, it is safe to revert this
commit.

This reverts commit 1cefd589da2edca84d19b285d553e2a68cda3e37.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2010>

5 years agoUpdate Persian translation
eshagh shahidani [Mon, 25 Oct 2021 20:42:25 +0000 (20:42 +0000)]
Update Persian translation

(cherry picked from commit 025588b89ac5736bd319a2982622aa9ae139d2c2)

5 years agoUpdate Latvian translation
Rūdolfs Mazurs [Mon, 25 Oct 2021 17:56:42 +0000 (17:56 +0000)]
Update Latvian translation

(cherry picked from commit ce2ae0642f2e6c20dd94d5740e00cbe781bd71ca)

5 years agoenvironment: Apply autoReverse/repeatCount to all transitions
Florian Müllner [Thu, 21 Oct 2021 17:50:18 +0000 (19:50 +0200)]
environment: Apply autoReverse/repeatCount to all transitions

Like the old Tweener API, ease() allows to transition multiple
properties at once. If autoReverse or repeatCount are specified,
they should apply to all transitions, but right now we only set
them for the first one.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2007>

5 years agoUpdate Kabyle translation
Selyan Slimane AMIRI [Sat, 16 Oct 2021 14:35:12 +0000 (14:35 +0000)]
Update Kabyle translation

(cherry picked from commit 8c5d552cc2f045bf40529eae436e30d46cf74c71)

5 years agosessionMode: Drop allowExtensions property
Ray Strode [Tue, 28 Sep 2021 19:31:11 +0000 (15:31 -0400)]
sessionMode: Drop allowExtensions property

Now that we allow extensions at the lock screens, extensions
are allowed for every session mode gnome-shell would typically
change to at runtime.

This means there's little advantage to having an allowExtensions
property in the session mode definition.

This commit simplifies the code a bit by dropping the property.

Third party session modes can still lock down extensions through
gsettings if they need to.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1967>

5 years agosessionMode: Allow extensions at the login and unlock screens
Ray Strode [Tue, 10 Aug 2021 19:31:00 +0000 (15:31 -0400)]
sessionMode: Allow extensions at the login and unlock screens

Now extensions can specify which session modes they work in,
but specifying the login screen or unlock screen session modes in
an extensions metadata still won't work, because those session
modes disallow extensions.

This commit fixes that.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1967>

5 years agoextensionSystem: Allow extensions to run on the login screen
Ray Strode [Sat, 28 Aug 2021 17:54:39 +0000 (13:54 -0400)]
extensionSystem: Allow extensions to run on the login screen

At the moment it's not realy possible to extend the login screen to do
things it doesn't have built-in support for. This means in order
to support niche use cases, those cases have to change the main
code base. For instance, oVirt and Vmware deployments want to be able
to automaticaly log in guest VMs when a user pre-authenticates through a
console on a management host. To support those use cases, we added
code to the login screen directly, even though most machines will never
be associated with oVirt or Vmware management hosts.

We also get requests from e.g. government users that need certain features
at the login screen that wouldn't get used much outside of government
deployments. For instance, we've gotten requests that a machine contains
prominently displays that it has "Top Secret" information.

All of these use cases seem like they would better handled via
extensions that could be installed in the specific deployments. The
problem is extensions only run in the user session, and get
disabled at the login screen automatically.

This commit changes that. Now extensions can specify in their metadata
via a new sessionModes property, which modes that want to run in. For
backward compatibility, if an extension doesn't specify which session
modes it works in, its assumed the extension only works in the user
session.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1967>

5 years agoextensionSystem: Get rid of _enabled boolean optimization
Ray Strode [Tue, 10 Aug 2021 17:25:57 +0000 (13:25 -0400)]
extensionSystem: Get rid of _enabled boolean optimization

At the moment a session mode either allows extensions or it doesn't.
If it allows extensions, then the entire available list of
configured extensions get enabled as soon as the session mode is
entered.

Since enabling or disabling extensions is an all or nothing situation,
the code tracks whether extensions are already enabled when entering
the session mode, and if so, avoids iterating through the extension list
needlessly. It does this using a boolean named _enabled.

In the future, the extensions themselves will be given some say on
whether or not they should be enabled in a given session mode. This
means, the configured extension list may contain extensions that
shouldn't be enabled for a given session mode, and the _enabled boolean
will no longer be appropriated.

This commit drops the _enabled boolean optimization.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1967>

5 years agoPost-branch mutter API bump
Florian Müllner [Thu, 14 Oct 2021 16:53:17 +0000 (18:53 +0200)]
Post-branch mutter API bump

Since the CI pipeline now runs `meson dist` which includes a test
for an up-to-date NEWS entry, post-branch/release version bumps
have become unwieldy.

It's still useful to increase the API version right after branching
though, so return to bumping it manually and do so now.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2005>

5 years agotheme: Fix high-contrast switches
Florian Müllner [Wed, 6 Oct 2021 16:51:03 +0000 (18:51 +0200)]
theme: Fix high-contrast switches

Commit 9d6fcfdc8506 dropped the different us/intl switches, but
the high-contrast theme was left out at the time (and therefore
ends up with the regular assets now).

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4672

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2000>

5 years agost/password-entry: Fix crash when DConf changes after StEntry is destroyed
Ray Strode [Tue, 12 Oct 2021 19:15:50 +0000 (15:15 -0400)]
st/password-entry: Fix crash when DConf changes after StEntry is destroyed

commit 8721c5db37c1409dbb806c915e6c077e1c4b8c6b made StPasswordEntry
honor the 'disable-show-password' setting.

Unfortunately, it introduced a lifecycle bug where the signal handler
for noticing setting changes can out live the entry itself.

This commit fixes the problem by using g_signal_connect_object

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2004>

5 years agoUpdated Czech translation
Marek Černocký [Sun, 10 Oct 2021 15:18:11 +0000 (17:18 +0200)]
Updated Czech translation

5 years agoci: Install mutter again on coverity job
Carlos Garnacho [Thu, 16 Sep 2021 08:03:38 +0000 (10:03 +0200)]
ci: Install mutter again on coverity job

This job "needs" the build job and thus gets its artifacts, but
it will not inherit the environment where we already installed
Mutter in /usr. This apparently broke once there was a more
recent mutter-clutter .pc file to look up.

Install Mutter in /usr again in this job, so the new build for
coverity finds all dependencies.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1979>

5 years agounlockDialog: Properly reset auth prompt when showing it
Ray Strode [Tue, 5 Oct 2021 15:01:19 +0000 (11:01 -0400)]
unlockDialog: Properly reset auth prompt when showing it

If a user hits escape twice really fast when coming back to
their machine to unlock it, they made end up getting presented
with a non-functional unlock screen that doesn't show their
user icon and doesn't ask for a password.

This is because showPrompt assumes that if an auth prompt already
exists, it's ready to go. That may not be true, if it's in the
process of getting torn down at the time because it's in the middle
of a cancel animation.

This commit solves the problem by ensuring the auth prompt is always
in a fresh reset state before showing it.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1999>

5 years agounlockDialog: Don't create AuthDialog just to finish it
Ray Strode [Fri, 8 Oct 2021 15:08:17 +0000 (11:08 -0400)]
unlockDialog: Don't create AuthDialog just to finish it

If the the unlock dialog gets finished before an auth dialog is
created, the code currently creates one just to tell it to finish.

This commit changes the code to skip creating the auth dialog in
that case.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1999>

5 years agonotificationDaemon: Fix sound-file support
Florian Müllner [Mon, 27 Sep 2021 13:40:05 +0000 (15:40 +0200)]
notificationDaemon: Fix sound-file support

When commit 25bfe99ed53b5b7 replaced the thin libcanberra wrapper
with the (then) new MetaSoundPlayer API, it missed that the latter
expects files as GFile instead of a file path.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1991>

5 years agoscreenshot: Unrestrict PickColor
Florian Müllner [Sat, 25 Sep 2021 12:15:32 +0000 (14:15 +0200)]
screenshot: Unrestrict PickColor

Commit dd2cd6286cd3 restricted callers of the screenshot methods to
portal implementations, gnome-settings-daemon and gnome-screenshot.

That restriction does make sense for the actual screenshot methods,
but `PickColor` is actually used by GTK in its color picker (and
therefore may be called from arbitrary applications).

Fix this by unrestricting access to `PickColor` again. Considering that
the method is always interactive, it's not very privacy/security-sensitive
anyway.

https://gitlab.gnome.org/GNOME/gtk/-/issues/4283

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1990>

5 years agoAdd screen protect status icons
Jakub Steiner [Mon, 4 Oct 2021 14:58:33 +0000 (16:58 +0200)]
Add screen protect status icons

  - OSD needs them

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4662

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1996>

5 years agoUpdate Croatian translation
Goran Vidović [Wed, 6 Oct 2021 17:08:50 +0000 (17:08 +0000)]
Update Croatian translation

5 years agowelcomeDialog: Fix title translation
Florian Müllner [Tue, 5 Oct 2021 13:05:18 +0000 (15:05 +0200)]
welcomeDialog: Fix title translation

Translators translate the format string ('... GNOME %s'), not the
substituted one ('... GNOME 41').

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4669

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1998>

5 years agoinputMethod: Clear preeditStr before reset
Christian Hergert [Wed, 29 Sep 2021 19:46:45 +0000 (12:46 -0700)]
inputMethod: Clear preeditStr before reset

Previously, these were performed in a different order before GNOME 41.
During some other changes they were swapped.

However, this causes both GTK 3 and GTK 4 applications to scroll to
incorrect positions from the preedit change.

Fixes #4647
Fixes GNOME/gtk#4289
Fixes GNOME/gnome-builder#1536
Fixes GNOME/gnome-builder#1531

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1993>

5 years agost/icon: Ensure icons are updated if theme node is invalid
Marco Trevisan (Treviño) [Wed, 22 Sep 2021 21:37:16 +0000 (23:37 +0200)]
st/icon: Ensure icons are updated if theme node is invalid

Icons that are changed while an actor is not mapped may not have a theme
node associated with, and thus we'd end up not updating them at all.
In fact we return early in st_update_icon(), and this was not an issue
until commit 0b1dfbf6f3f, because we'd end up to update the icon anyways
once the style was changed (and so with a valid theme node), but since
such change we might not updating the icon if no theme detail changed.

To prevent this, add a flag to require an icon update when the theme
changed, if no successfully update happened earlier.

Fixes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4568
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1983>

5 years agoUpdate Icelandic translation
Sveinn í Felli [Thu, 30 Sep 2021 13:09:18 +0000 (13:09 +0000)]
Update Icelandic translation

5 years agoUpdate Hebrew translation
Yaron Shahrabani [Mon, 27 Sep 2021 08:14:57 +0000 (08:14 +0000)]
Update Hebrew translation

5 years agoUpdate Turkish translation
Emin Tufan Çetin [Sun, 26 Sep 2021 12:18:02 +0000 (12:18 +0000)]
Update Turkish translation

5 years agoUpdate Vietnamese translation
Ngọc Quân Trần [Sun, 26 Sep 2021 01:29:27 +0000 (01:29 +0000)]
Update Vietnamese translation

5 years agoAlways assume GLSL is supported
Jonas Ådahl [Tue, 21 Sep 2021 14:35:32 +0000 (16:35 +0200)]
Always assume GLSL is supported

The support for GLSL has been advertised as unconditionally supported by
mutter for a while, and has now lost the 'GLSL' feature completely. Lets
remove the checks.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1985>

5 years agoUpdate Serbian translation
Марко Костић [Mon, 20 Sep 2021 04:23:46 +0000 (04:23 +0000)]
Update Serbian translation

5 years agoBump version to 41.0
Florian Müllner [Sun, 19 Sep 2021 10:45:39 +0000 (12:45 +0200)]
Bump version to 41.0

Update NEWS.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1981>

5 years agoUpdate Greek translation
Efstathios Iosifidis [Fri, 17 Sep 2021 18:42:18 +0000 (18:42 +0000)]
Update Greek translation

5 years agoUpdate Catalan translation
Jordi Mas [Thu, 16 Sep 2021 19:31:00 +0000 (21:31 +0200)]
Update Catalan translation

5 years agoUpdated Danish translation
Alan Mortensen [Thu, 16 Sep 2021 15:06:09 +0000 (17:06 +0200)]
Updated Danish translation

5 years agoUpdate Bulgarian translation
Alexander Shopov [Wed, 15 Sep 2021 12:04:45 +0000 (12:04 +0000)]
Update Bulgarian translation

5 years agoUpdate Finnish translation
Jiri Grönroos [Tue, 14 Sep 2021 10:18:57 +0000 (10:18 +0000)]
Update Finnish translation

5 years agoUpdate Occitan translation
Quentin PAGÈS [Mon, 13 Sep 2021 19:52:55 +0000 (19:52 +0000)]
Update Occitan translation

5 years agoUpdate Dutch translation
Nathan Follens [Mon, 13 Sep 2021 14:59:11 +0000 (14:59 +0000)]
Update Dutch translation

5 years agoUpdate Polish translation
Piotr Drąg [Sat, 11 Sep 2021 13:49:13 +0000 (13:49 +0000)]
Update Polish translation

5 years agoUpdate Hungarian translation
Balázs Úr [Fri, 10 Sep 2021 23:09:03 +0000 (23:09 +0000)]
Update Hungarian translation

5 years agoUpdate Punjabi translation
Aman Alam [Thu, 9 Sep 2021 03:40:05 +0000 (03:40 +0000)]
Update Punjabi translation

5 years agoUpdate Catalan translation
Jordi Mas [Tue, 7 Sep 2021 20:32:11 +0000 (22:32 +0200)]
Update Catalan translation

5 years agoUpdate Croatian translation
Goran Vidović [Tue, 7 Sep 2021 19:49:49 +0000 (19:49 +0000)]
Update Croatian translation

5 years agoUpdate Croatian translation
Goran Vidović [Tue, 7 Sep 2021 19:48:16 +0000 (19:48 +0000)]
Update Croatian translation

5 years agoBump version to 41.rc.1
Florian Müllner [Tue, 7 Sep 2021 13:15:11 +0000 (15:15 +0200)]
Bump version to 41.rc.1

Update NEWS.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1976>

5 years agobuild: Add option to turn off tests
Florian Müllner [Sun, 5 Sep 2021 22:57:33 +0000 (00:57 +0200)]
build: Add option to turn off tests

St's theme test now requires the libmutter-test library, which is only
built when tests are enabled. Instead of mandating a particular build
configuration in mutter, add a corresponding option in gnome-shell as
well.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1975>

5 years agobuild: Check sassc errors when generating stylesheets
Florian Müllner [Sun, 5 Sep 2021 22:38:54 +0000 (00:38 +0200)]
build: Check sassc errors when generating stylesheets

We currently just call sassc, but don't check its return value. That
means as long as sassc is available, the script (and therefore the
newly added dist CI job) will succeed.

Make sure we fail on failure.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1974>

5 years agoUpdate Romanian translation
Daniel Șerbănescu [Sun, 5 Sep 2021 09:48:58 +0000 (09:48 +0000)]
Update Romanian translation

5 years agoBump version to 41.rc
Florian Müllner [Wed, 1 Sep 2021 23:39:29 +0000 (01:39 +0200)]
Bump version to 41.rc

Update NEWS.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1971>

5 years agoci: Add dist job
Florian Müllner [Tue, 31 Aug 2021 11:06:22 +0000 (13:06 +0200)]
ci: Add dist job

So far, releases are done locally by invoking `meson dist`.

We can do better and leverage the existing CI infrastructure, to get
to the following release workflow:

 - bump version in meson.build, update NEWS etc.
 - open merge request for the release
 - merge when the pipeline (including dist check) succeeds
 - tag the release
 - wait for the tag pipeline to spit out the tarball artifact

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1968>

5 years agoci: Reindent yaml configuration
Florian Müllner [Tue, 31 Aug 2021 10:54:19 +0000 (12:54 +0200)]
ci: Reindent yaml configuration

Most GNOME projects have settled on a 2-space indentation, so switch
to that. This will ease the ongoing copy+paste between projects :-)

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1968>

5 years agobuild: Move metainfo version check into distscript
Florian Müllner [Tue, 31 Aug 2021 10:25:28 +0000 (12:25 +0200)]
build: Move metainfo version check into distscript

The time we really care about current release information in appdata is
when preparing a release, not during regular builds.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1968>

5 years agobuild: Check NEWS for version
Florian Müllner [Tue, 31 Aug 2021 10:21:02 +0000 (12:21 +0200)]
build: Check NEWS for version

I don't think this ever happened to me, but it can't hurt enforcing
that every release has a corresponding NEWS entry.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1968>

5 years agoUpdate Korean translation
Changwoo Ryu [Sat, 4 Sep 2021 14:59:50 +0000 (14:59 +0000)]
Update Korean translation

5 years agoshell/util: Remove get_content_for_window_actor()
Robert Mader [Wed, 9 Jun 2021 19:18:21 +0000 (21:18 +0200)]
shell/util: Remove get_content_for_window_actor()

It got replaced by `meta_window_actor_paint_to_content()`.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1879>

5 years agowindowManager: Use MetaWindowActor.paint_to_content() for window effects
Robert Mader [Sun, 6 Jun 2021 12:29:47 +0000 (14:29 +0200)]
windowManager: Use MetaWindowActor.paint_to_content() for window effects

Previously we used `get_image()`, which returned `cairo_surface`,
in order to create a `ClutterContent` with a screenshot of the
`MetaWindowActor`. This added a roundtrip from GPU to CPU memory.

Instead, use the new `paint_to_content()` API which lets us use a
`CoglTexture` directly as source of our `ClutterContent`.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1879>

5 years agoinputMethod: Use update-preedit-with-mode signal
Carlos Garnacho [Tue, 27 Jul 2021 14:52:32 +0000 (16:52 +0200)]
inputMethod: Use update-preedit-with-mode signal

This signal announces the preferred commit mode of the preedit text when
the input context is reset. Keep this mode around, and ensure to honor this
mode (e.g. maybe commit the preedit string) whenever the input method would
be reset.

This is delegated to the internal layers, so propagate this mode via
clutter_input_method_set_preedit_text().

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1929>

5 years agoscreenshot: Restrict callers
Florian Müllner [Wed, 16 Jun 2021 20:11:50 +0000 (22:11 +0200)]
screenshot: Restrict callers

The shell D-Bus API was always meant as a private API for core
components, so enforce that by limiting caller to a list of
allowed well-known names.

Applications that want to request a screenshot can use the corresponding
desktop portal.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3943

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1970>

5 years agoshellDBus: Restrict callers
Florian Müllner [Thu, 17 Jun 2021 13:29:42 +0000 (15:29 +0200)]
shellDBus: Restrict callers

The org.gnome.Shell interface provides a private API to other core
components to implement desktop functionalities like Settings or
global keybindings. It is not meant as a public API, so limit it
to a set of expected callers.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3943

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1970>

5 years agoshellDBus: Implement all methods asynchronously
Florian Müllner [Thu, 17 Jun 2021 13:29:42 +0000 (15:29 +0200)]
shellDBus: Implement all methods asynchronously

In order to restrict callers, we will need access to the invocation,
not just the unpacked method parameters.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3943

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1970>

5 years agointrospect: Split out DBusSenderChecker
Florian Müllner [Wed, 16 Jun 2021 17:09:42 +0000 (19:09 +0200)]
introspect: Split out DBusSenderChecker

Restricting callers to a list of allowed senders is useful for
other D-Bus services as well, so split out the existing code
into a reusable class.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3943

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1970>

5 years agodata: Remove now unused "introspect" setting
Florian Müllner [Wed, 1 Sep 2021 19:25:26 +0000 (21:25 +0200)]
data: Remove now unused "introspect" setting

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3943

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1970>

5 years agointrospect: Use MetaContext:unsafe-mode instead of setting
Florian Müllner [Wed, 1 Sep 2021 19:18:42 +0000 (21:18 +0200)]
introspect: Use MetaContext:unsafe-mode instead of setting

The property was added precisely for this purpose, except that its
name isn't tied to the introspect API.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3943

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1970>

5 years agointrospect: Make invocation check error-based
Florian Müllner [Thu, 2 Sep 2021 14:23:38 +0000 (16:23 +0200)]
introspect: Make invocation check error-based

If we throw an error when the invocation isn't allowed instead of
returning false, we can simply return that error instead of duplicating
the error handling.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1970>

5 years agoshellDBus: Use MetaContext:unsafe-mode to restrict Eval()
Florian Müllner [Wed, 16 Jun 2021 23:50:50 +0000 (01:50 +0200)]
shellDBus: Use MetaContext:unsafe-mode to restrict Eval()

The Eval() method is unarguably the most sensitive D-Bus method
we expose, since it allows running arbitrary code in the compositor.

It is currently tied to the `development-tools` settings that is
enabled by default. As users have become accustomed to the built-in
commands that are enabled by the same setting (restart, lg, ...),
that default cannot easily be changed.

In order to restrict the method without affecting the rather harmless
commands, guard it by the new MetaContext:unsafe-mode property instead
of the setting.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3943

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1970>

5 years agopanel: Show warning indicator when unsafe-mode is on
Florian Müllner [Thu, 2 Sep 2021 15:15:36 +0000 (17:15 +0200)]
panel: Show warning indicator when unsafe-mode is on

MetaContext added an unsafe-mode property, which we will use to restrict
a number of privileged operations unless it is enabled. It is meant to
only be enabled temporarily for development/debugging purposes, so add
a scary icon to the top bar as a reminder to turn it off again.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/3943

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1970>

5 years agoUpdate Chinese (China) translation
Boyuan Yang [Fri, 3 Sep 2021 18:09:05 +0000 (18:09 +0000)]
Update Chinese (China) translation

5 years agoUpdate Persian translation
Danial Behzadi [Fri, 3 Sep 2021 10:47:09 +0000 (10:47 +0000)]
Update Persian translation

5 years agoboxpointer: Fix positioning with non-widget sources
Florian Müllner [Wed, 1 Sep 2021 18:37:13 +0000 (20:37 +0200)]
boxpointer: Fix positioning with non-widget sources

Commit 16d371873 lifted the requirement for source actors to be
widgets, then got it wrong :rolling_eyes:

The content box is expected to be in actor coordinates, so the
allocation must be translated to (0, 0).

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4593

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1969>

5 years agoUpdated Lithuanian translation
Aurimas Černius [Wed, 1 Sep 2021 20:06:41 +0000 (23:06 +0300)]
Updated Lithuanian translation

5 years agowindowManager: Discard workspace scroll smooth events
José Expósito [Mon, 23 Aug 2021 16:30:02 +0000 (18:30 +0200)]
windowManager: Discard workspace scroll smooth events

Since touchpad smooth scroll events with source finger are handled by
the swipeTracker, the workspace scroll handler can focus on discrete
events.

Thanks to Mutter emulating discrete scroll events, see
meta_seat_impl_notify_scroll_continuous_in_impl in meta-seat-impl.c,
it is safe to ignore smooth scroll in the workspace scroll handler
and handle exclusively discrete events.

In addition, once high-resolution scroll events land in Mutter [1], a
mouse will be able generate non emulated smooth scroll events that
should be ignored in favour of the discrete scroll events.
Otherwise, a single mouse wheel click will scroll through multiple
workspaces at once.

[1] https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1962

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1959>

5 years agolayout: Exclude hidden actors from struts
Florian Müllner [Thu, 26 Aug 2021 19:54:15 +0000 (21:54 +0200)]
layout: Exclude hidden actors from struts

Currently we only exclude hidden actors from the input region,
but not from struts. This is an oversight that went unnoticed
until now, probably because we didn't consider the work area
in the overview until recently.

https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4569

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1963>

5 years agokeyboard: Ensure chrome input region is updated after slide animation
Sebastian Keller [Tue, 17 Aug 2021 22:45:16 +0000 (00:45 +0200)]
keyboard: Ensure chrome input region is updated after slide animation

The keyboard is placed outside of the screen when shown and then slides
in via a transition that changes the translate-y property. This
translation does not affect the allocation of the Keyboard actor and as
such does not trigger any of the signals LayoutManager is connected to
to update the input region. This means the input region remains at the
original position of the actor outside of the screen and as a result on
X11 clicks will go through to the underlying window.

There was a workaround for this by queuing a relayout at the end of the
transition, but this stopped working due to optimizations avoiding
unnecessary allocation changes.

This updates that workaround to toggle the visibility of the actor
instead, which is the other signal that LayoutManager reacts to. Once
ClutterActor provides better ways to react to transforms this can
hopefully be removed entirely.

Fixes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4556
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1955>